<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var data = [
            {
                name: "所有物品",
                children: [
                    {
                        name: "水果",
                        children: [{ name: "苹果", children: [{ name: '青苹果' }, { name: '红苹果' }] }]
                    },
                    {
                        name: '主食',
                        children: [{ name: "米饭", children: [{ name: '北方米饭' }, { name: '南方米饭' }] }]
                    },
                    {
                        name: '生活用品',
                        children: [
                            { name: "电脑类", children: [{ name: '联想电脑' }, { name: '苹果电脑' }] },
                            { name: "工具类", children: [{ name: "锄头" }, { name: "锤子" }] },
                            { name: "生活用品", children: [{ name: "洗发水" }, { name: "沐浴露" }] }
                        ]
                    }
                ]
            }
        ]

        var recursiveFunction = function () {
            var str = ''
            var getStr = function (list) {
                list.forEach(item => {
                    if (item.children) {
                        getStr(item.children)
                    } else {
                        str += item.name + ';'
                    }
                })
            }
            getStr(data)
            console.log(str) // 青苹果;红苹果;北方米饭;南方米饭;联想电脑;苹果电脑;锄头;锤子;洗发水;沐浴露;
        }
        recursiveFunction()
    </script>
</head>

<body>

</body>

</html>